Efficient Binary Transfer of Pointer Structures
نویسندگان
چکیده
This paper presents a pair of algorithms for output and input of pointer structures in binary format. Both algorithms operate in linear space and time. They have been inspired by copying compacting garbage collection algorithms, and make similar assumptions about the representations of pointer structures. In real programs, the transfer of entire pointer structures is often inappropriate. The algorithms are extended to lazily transfer partitions of a pointer structure: the receiver requests partitions when it needs them. A remote procedure call mechanism is presented that uses the binary transfer algorithms for communicating arguments and results. A use of this as an enabling mechanism in the implementation of a software engineering environment is discussed.
منابع مشابه
Efficient implementation of low time complexity and pipelined bit-parallel polynomial basis multiplier over binary finite fields
This paper presents two efficient implementations of fast and pipelined bit-parallel polynomial basis multipliers over GF (2m) by irreducible pentanomials and trinomials. The architecture of the first multiplier is based on a parallel and independent computation of powers of the polynomial variable. In the second structure only even powers of the polynomial variable are used. The par...
متن کاملSuccinct balanced binary tree and packed memory structure
Binary search trees are one of the oldest and most common dictionary data structures. The most common implementation of a binary tree uses two pointers in each node to point to the children. This representation however suffers from significant multiplicative overhead for storage of data. Each datum incurs an overhead of two pointers. In common programming languages, where each node is represent...
متن کاملRun-time Correctness Checking Is Algorithmically Undecidable for Pointer Data Structures
Programs routinely use complicated pointer (linked list-type) data structures such as linked lists, doubly linked lists, diierent types of trees, etc. These data structures are usually deened inductively: e.g., a tree can be deened as a structure that results from an empty tree by an arbitrary sequence of adding and deleting elements. When the program runs, these data structures take dynamicall...
متن کاملA Mathematical Cache Miss Analysis for Pointer Data Structures
As the gap between processor and memory performance widens, careful analyses and optimizations of cache memory behavior become increasingly important. While analysis of regular loop-based scientific programs has made significant progress, the analysis of less regular reference patterns has lagged somewhat. This paper presents basic analytic expressions for cache miss behavior in fundamental typ...
متن کاملImplementation of Binary Search Trees Via Smart Pointers
Study of binary trees has prominent place in the training course of DSA (Data Structures and Algorithms). Their implementation in C++ however is traditionally difficult for students. To a large extent these difficulties are due not so much to the complexity of algorithms as to language complexity in terms of memory management by raw pointers – the programmer must consider too many details to en...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Softw., Pract. Exper.
دوره 24 شماره
صفحات -
تاریخ انتشار 1994